home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HyperLib 1997 Winter - Disc 1
/
HYPERLIB-1997-Winter-CD1.ISO.7z
/
HYPERLIB-1997-Winter-CD1.ISO
/
オンラインウェア
/
PRG
/
Gestalt Selectors 3.3.sit
/
Gestalt Selectors 3.3
/
Gestalt Selectors List 3.3
/
Updates
/
Update 3.2.2
< prev
next >
Wrap
Text File
|
1996-01-11
|
20KB
|
469 lines
Happy New Year!
Hopefully 1996 with bring you what you expect.
If you visited the GSL home Web pages recently you should have noticed
version 3.2.1 was available instead of just 3.2. Whenever possible I try
to make the latest 'bug fixes' available there from now on. But the HTML
version may appear a few days after I emailed the update.
Also, there are now more than 150 subscribers to the mailing list!
Included with this update is a note with the INITGestalt report. But I
want to mention it here too:
---------------------------------------------------------------------------
We, Jeremy Roussak and Rene Ros, will not work on new versions of this
proposed standard. Apart from not having the time to work on it we found
that it was not supported sufficiently by the programmers community.
Perhaps because it was not backwards compatible with existing software.
Also, we are worried by the yet unknown impact of memory protection of
Copland (System 8?) on the way of 'memory sharing' used by INITGestalt.
Our apologies for any inconvenience this decision may cause.
---------------------------------------------------------------------------
Best Regards,
Rene
Gestalt Selectors List 3.2.2 Update
===================================
Maintained by Rene G.A. Ros (rgaros@bio.vu.nl)
First published: 12 October 1992, 13:15 CET (GMT+1)
Last version: 11 December 1995, 08:05 CET (GMT+1)
Previous update: 18 December 1995, 07:40 CET (GMT+1)
Last modified : 11 January 1996, 01:40 CET (GMT+1)
The complete version is available to subscribers by sending an email to:
gestalt-selectors-list-request@bio.vu.nl
with as subject:
archive get recent/gestalt-selectors.etx
or to get the compressed version:
archive get recent/gestalt-selectors.sit.hqx
If this is the first update you receive since subscribing to the mailing
list you may want to get the previous updates as well. Then email to the
address listed above and use this command:
archive get updates/updates-comb.etx
A vertical bar in front of a line indicates the line has changed or was
added.
PLEASE SEND COMMENTS AND CORRECTIONS TO THE EDITOR AS SOON AS POSSIBLE.
The following persons contributed to this update:
===========================================================================
Contributions to the selector sections
===========================================================================
Person Software Selector(s) added/changed
---------------------------------------------------------------------------
Anonymous Open Transport otvr
Jean-Pierre Curcio AppleScript ext ascv
Speed Emulator ext XAsm
System? serh
System snd
Avi Drissman Conflict Catcher ext cc20, cc30
Andreas Magnusson SLIP Extension JMBe, SLP1
Rene Ros Extension AppleTel ext apmo
Stacker Removable Extension ext
SFM2
System (enablers) kbd
---------------------------------------------------------------------------
===========================================================================
Contributions to the non-selector sections
===========================================================================
Person Chapter/Section
---------------------------------------------------------------------------
Jeremy Roussak / Rene Ros
Reports/INITGestalt standard
---------------------------------------------------------------------------
Apple System Software (A-E)
===========================
ascv (AppleScript ext [1.0])
gestaltAppleScriptVersion &AS08
Returns the version of AppleScript as NumVersion?
#define gestaltAppleScriptVersion 'ascv' /* AppleScript version */
NOTE:
AppleScript 1.1 returns 0x01100110 which doesn't look like a proper
version number (version 1.0 returned 0x01008000). (Rene Ros)
| Perhaps the version of the Apple Event Manager in returned in the high
| word and the version of AppleScript in the low word? (Jean-Pierre
| Curcio)
Apple System Software (F-J)
===========================
No changes.
Apple System Software (K-N)
===========================
kbd (System [6.0.4])
gestaltKeyboardType
Returns a value that indicates the type of keyboard on which the last
keystroke was seen.
enum {
#define gestaltKeyboardType 'kbd ' /* keyboard type */
gestaltMacKbd = 1, /* Macintosh Keyboard */
gestaltMacAndPad = 2, /* Macintosh Keyboard with Pad */
gestaltMacPlusKbd = 3, /* Macintosh Plus Keyboard */
gestaltExtADBKbd = 4, /* Extended ADB Keyboard */
gestaltStdADBKbd = 5, /* Standard ADB Keyboard */
gestaltPrtblADBKbd = 6, /* Portable ADB Keyboard */
gestaltPrtblISOKbd = 7, /* Portable ISO ADB Keyboard */
gestaltStdISOADBKbd = 8, /* Standard ISO ADB Keyboard */
gestaltExtISOADBKbd = 9, /* Extended ISO ADB Keyboard */
gestaltADBKbdII = 10, /* ADB Keyboard II */
gestaltElmerKbd = 10, /* = gestaltADBKbdII, used in some */
/* sample code */
gestaltADBISOKbdII = 11, /* ISO ADB Keyboard II */
gestaltElmerISOKbd = 11, /* = gestaltADBISOKbdII, used in */
/* some sample code */
gestaltPwrBookADBKbd = 12, /* PowerBook Keyboard &AT01 */
gestaltPwrBookISOADBKbd = 13, /* PowerBook Keyboard (ISO) &AT01 */
gestaltAppleAdjustKeypad = 14, /* Apple Adjustable Keypad &AT01 */
gestaltAppleAdjustADBKbd = 15, /* Apple Adjustable Keyboard, incl. */
/* US, ISO and Japanese &AT01 */
/* PowerBook Extended Keyboards &AS15 */
gestaltPwrBkExtISOKbd = 20, /* PowerBook Extended Intl. */
gestaltPwrBkExtJISKbd = 21, /* PowerBook Extended Japanese */
gestaltPwrBkExtADBKbd = 24}; /* PowerBook Extended Domestic */
======================================================================
Combinations of System Global KbdType/ADB Mgr devType and
gestaltKeyboardType values &AT01
======================================================================
KbdType gestaltKeyboardType Gestalt Name
(hex.) (decimal)
----------------------------------------------------------------------
0x03 1 gestaltMacKbd
0x13 2 gestaltMacAndPad
0x0B 3 gestaltMacPlusKbd
0x02 4 gestaltExtADBKbd
0x01 5 gestaltStdADBKbd
0x06 6 gestaltPrtblADBKbd
0x07 7 gestaltPrtblISOKbd
0x04 8 gestaltStdISOADBKbd
0x05 9 gestaltExtISOADBKbd
0x08 10 gestaltADBKbdII
0x09 11 gestaltADBISOKbdII
0x0C 12 gestaltPwrBookADBKbd
0x0D 13 gestaltPwrBookISOADBKbd
0x0E 14 gestaltAppleAdjustKeypad
0x10 15 gestaltAppleAdjustADBKbd, US
0x11 15 gestaltAppleAdjustADBKbd, ISO
0x12 15 gestaltAppleAdjustADBKbd, Japanese
0x13 20 gestaltPwrBkExtISOKbd ?
0x14 21 gestaltPwrBkExtJISKbd ?
0x17 24 gestaltPwrBkExtADBKbd ?
----------------------------------------------------------------------
NOTES:
The Apple Adjustable Keyboard doesn't have its own Gestalt keyboard
type defined with some versions of System Software (7.1?). It changes
a low memory global but this doesn't change the Gestalt response. This
problem is corrected by the Hardware System Update 2.0 and later.
If the keyboard isn't recognized by the Gestalt Mgr, an error is
returned. &AD19
The PowerMac 7100/66 (System 7.1.2) doesn't install this selector for
some reason. Other Macs with Gestalt version 4 do, so it isn't
intentional.
| You may find a Gestalt header file which lists the Extended ADB
| keyboard as three different types (Domestic, International and
| Japanese) instead of one as later was corrected by Apple in a
| Technical Note. Even the Gestalt header file for ETO #18 lists the
| old (?) info, but should I start doubting about the correctness of the
| Technical Note?
| The KbdType numbers for the PowerBook Extended Keyboards were found
| with the PTCH 5 resource of the Hardware System Update 2.0.
| (Rene Ros)
Since this selector returns the type of the keyboard last touched
and because there can be more than one keyboard, MacDTS considers this
selector to be obsolete. You should use GetADBInfo instead and check
the orgADBAddr field for a keyboard (0x02) and the devType field
contains the keyboard device type. It uses the same values as the
KbdType low memory variable, see the table above. &AD07/AT01
mach (System [6.0.4]) INF
gestaltMachineType
Returns one of the following values, indicating the type of
machine.
enum {
#define gestaltMachineType 'mach' /* machine type */
/* RELEASED COMPUTERS */
gestaltPowerMac8100_110 = 40, /* Power Macintosh 8100/110 and */
/* Power Macintosh 8115/10 &AD18 */
| gestaltAWS8150_110 = 40, /* = gestaltPowerMac8100_110,
| /* Workgroup Server 8150/110 */
| /* &AS20 */
| gestaltAWS8150_80 = 65, /* = gestaltPowerMac8100_80,
| /* Workgroup Server 8150/80 */
| /* &AS20 */
| gestaltAWS6150_60 = 75, /* = gestaltPowerMac6100_60,
| /* Workgroup Server 6150/60 */
| /* &AS20 */
| gestaltAWS6150_66 = 100, /* = gestaltPowerMac6100_66,
| /* Workgroup Server 6150/66 */
| /* &AS20 */
};
[other values and notes are unchanged and omitted here]
Apple System Software (O-S)
===========================
snd (System [6.0.4])
gestaltSoundAttr
Returns information about the sound capabilities of the machine.
enum {
#define gestaltSoundAttr 'snd ' /* sound attributes */
gestaltStereoCapability = 0, /* can play stereo sounds */
gestaltStereoMixing = 1, /* mixes channels into single */
/* signal */
| gestaltSoundReserved = 2, /* Sound Manager 3.1? QT uses new */
| /* Sound Mgr calls? */
gestaltSoundIOMgrPresent = 3, /* new sound input routines avail.*/
gestaltBuiltInSoundInput = 4, /* built-in sound input device */
/* available */
gestaltHasSoundInputDevice = 5, /* some sound input device avail. */
gestaltPlayAndRecord = 6, /* built-in hardware can play and */
/* record simultaneously */
/* &AS03/AS04 */
gestalt16BitSoundIO = 7, /* sound hardware can play and */
/* record 16-bit samples &AS04 */
gestaltStereoInput = 8, /* sound hardware can record */
/* stereo &AS04 */
gestaltLineLevelInput = 9, /* sound input port requires line */
/* level &AS04 */
gestaltSndPlayDoubleBuffer = 10, /* play from disk available &AS04 */
gestaltMultiChannels = 11, /* multiple channel support */
/* &AS03/AS04 */
gestalt16BitAudioSupport = 12}; /* 16 bit audio data supported */
/* &AS04 */
NOTES:
Bit 7 through 12 are not defined for versions of the Sound Manager
prior to version 3.0.
With the Enhanced Sound Manager (version 2) you have both multi-
channel and play-from-disk capability if the Apple Sound Chip is
available. But the gestaltSndPlayDoubleBuffer and gestaltMultiChannels
bits are not set. Test for the gestaltHasASC bit of the
gestaltHardwareAttr selector. &AD06/AD20
A later Technical Note retracts this info, and says it is not safe to
assume both functions if the gestaltHasASC bit is set with the
gestaltHardwareAttr selector! &AT01
Apple System Software (T-Z)
===========================
No changes.
Apple Additional Software
=========================
No changes.
Third Parties Software
======================
|JMBe (SLIP Extension ? [???] part of MacSLIP by Hyde Park Software)
(Traceroute Ethernet LAP extension [1.0] by Jim Browne)
gestalt???
Returns the address of a structure as documented in the header file
'RawIP.h' to allow application programs to perform Raw IP writes and
filter all incoming IP packets.
#define gestalt??? 'JMBe'
Unknown Gestalt Selector Codes
==============================
Apple Software
--------------
|apmo (Extension AppleTel ext [2.1.3?])
|
| NOTE: Extension name translated from Dutch.
|
|otvr (Open Transport ??? [1.1?] part of System 7.5.3 / 7.5 Update 2.0s9)
gestaltOpenTransportVersion?
| Returns the version of Open Transport as NumVersion. (Anonymous)
#define gestaltOpenTransportVersion? 'otvr'
| NOTE: Observed value is 0x01106009 meaning 1.1b9.
serh (System? [7.1.2?])
gestaltSerialHardware?
Returns type of hardware used for serial I/O?
enum {
#define gestaltSerialHardware? 'serh' /* Serial Hardware */
gestaltClassicSer? = 'Clas', /* returned on PM 8100/80 */
| gestalt??? = 'Impl', /* returned on Quadra 660AV */
| /* with System 7.5.1 */
gestalt??? = 'TntS'}; /* returned on PM 7200, */
/* PM 8500 and PM 9500 */
/* with System 7.5.2 */
Third Parties Software
----------------------
|cc20 (Conflict Catcher ext [2.0?] by ???)
NOTE: The 'cc' are actually option-c (0x8D).
|cc30 (Conflict Catcher ext [3.0?] by ???)
| NOTE: The 'cc' are actually option-c (0x8D).
|
|SLP1 (SLIP Extension [???] part of MacSLIP by Hyde Park Software)
|STM2 (Stacker Removable Extension ext [2.0?] by Stac Electronics)
|XAsm (Speed Emulator ext [???] by Connectix Corporation)
Reports
=======
INITGestalt standard
--------------------
(by Rene Ros, based on INITGestalt proposal by Jeremy Roussak and Rene Ros)
|IMPORTANT NOTE:
|We, Jeremy Roussak and Rene Ros, will not work on new versions of this
|proposed standard. Apart from not having the time to work on it we found
|that it was not supported sufficiently by the programmers community.
|Perhaps because it was not backwards compatible with existing software.
|Also, we are worried by the yet unknown impact of memory protection of
|Copland (System 8?) on the way of 'memory sharing' used by INITGestalt.
The INITGestalt proposal tried to define a standard memory structure which
describes the basic information about software. Using the Gestalt call
other software obtains a pointer to the structure for software which uses
the INITGestalt standard.
You can obtain the latest, and last, version of the INITGestalt proposal by
sending an email, with subject 'archive get init-gestalt*', to
gestalt-selectors-list-request@bio.vu.nl
About this list
===============
For this update this chapter only includes the 'Gestalt Submission Form',
'Acknowledgements' and 'Editors' Address' sections.
Gestalt Submission Form
-----------------------
You can use this form to report information you found on already included
selectors. But you can also use it to register new Gestalt selector codes.
If you want to register the selector code your software installs, make sure
you registered your code first with Apple Computer, Inc. Also, it is your
good right if you chose to keep the meaning of the response value private.
If so, still register so that others can at least detect your software by
determining if the selector is present.
Software means, in this form, the software which installs the selector
code. Not the whole package, just the extension or control panel (perhaps
application) itself.
The package is the product name in which the software is included and
distributed.
If data is not available or relevant, leave it blank. When the selector
contains non-ASCII characters, please also provide the hexadecimal value.
You can also fill in this form on-line because it is also on the WWW
pages of the GSL: http://www.bio.vu.nl/home/rgaros/gestalt/
Your name:
Your email address:
Your company name:
Do you want to remain anonymous? Yes / No
Software name:
Software type: O application
O control panel
O extension (also 'appe')
O other:
Category: O Apple System Software
O Apple Additional Software
O Apple Software
O Third Parties Software
Package name:
Author or Company name:
Gestalt Selector:
Constant name:
First version to install selector:
Source of information:
Short description of the returned response:
Additional constant names and values for the response value meaning:
Please email this form to this Internet address: rgaros@bio.vu.nl
Acknowledgements
----------------
I want to thank the following persons for their contributions to this
update and their support of this list:
===========================================================================
Name Internet Email Address
---------------------------------------------------------------------------
Anonymous contributor(s) anonymous@secret.bvd.nl
Jean-Pierre Curcio JPC83@calvacom.fr
Avi Drissman ad406@detroit.freenet.org
Andreas Magnusson Andreas.Magnusson@mailbox.swipnet.se
---------------------------------------------------------------------------
Legal Stuff
-----------
(C) 1992-1996, Rene G.A. Ros
It is not allowed to distribute updates to the GSL. The full GSL can be
used freely but is not public domain.
See for legal information the Legal Stuff chapter of the full Gestalt
Selectors List.
Editor's Address
----------------
Rene G.A. Ros
developer at Mac Support Automation B.V., Uitgeest, The Netherlands
consultant to the Computer Department,
Biology Faculty, Vrije Universiteit Amsterdam, The Netherlands
contract programmer Pascal and C, also 4th Dimension and other data-bases
D.C. van Krimpenstraat 3
1067 SG Amsterdam-Geuzenveld
The Netherlands, Europe
Email: rgaros@bio.vu.nl (preferred)
rgaros@dds.nl
100112.1363@compuserve.com